// Vuex中的用户模块
import { loginAPI } from '@/api'
import { getToken, removeToken, setToken } from '@/utils/auth'
export default {
  namespaced: true,
  state: {
    token: getToken() // 初始化的时候从本地缓存获取
  },
  mutations: {
    setToken(state, token) {
      state.token = token
      // 同步到持久化
      setToken(token)
    },
    removeToken(state) {
      state.token = null
      removeToken() // 删除本地缓存的token
    }
  },
  actions: {
    // 在登录组件中调用actions方法
    async login(store, data) {
      // setTimeout(() => {
      //   console.log(data)
      //   store.commit('setToken', '123456') // 提交token
      // }, 500)
      store.commit('setToken', await loginAPI(data))
    }
  }

}
